<?php
require_once 'BaseController.php';

class Mypage_LoginController extends Mypage_BaseController
{
	public function indexAction()
	{
		//表示テンプレートパス設定
		$this->_display_path = APPLICATION_PATH . '/modules/mypage/views/scripts/common2.tpl';

		// パラメータの取得
		$this->_params = $this->getParameters();

		//=====表示用共通パラメータ設定=====
		$this->setCommonParams();

		$this->_data =  $this->_params;
		$this->_data['loginurl']  = $this->_loginurl;

		 //=====ブロック設定:マイページログイン=====
		 $this->setBlock($this->_login_helper,$this->_js_login_helper);

		 //=====表示=====
		 $this->display($this->_display_path);
	}

	/**
	 * ログイン認証アクション
	 *
	 * @access public
	 * @return void
	 */
	public function loginAction()
	{
		$this->_params = $this->getParameters();

		if (isset($this->_params['isMobile']) && $this->_params['isMobile'] == 1)
		{
			//モバイル処理
			$this->_model = new Mypage_Model_Login();
			// ログインユーザ認証
			try {
				//トランザクション開始
				$db = $this->_model->getDbConnection();
				$this->_model->startTransaction($db);

				$id = $this->_params['eID'];
				$password = $this->_params['ePass'];
				$isAutoLogin = $this->_params['autoLoginFlg'];
				$result = $this->_model->getAccount($id,$password);
				$this->_data['id']   = $id;
				$this->_data['name'] = $result[0]['M92_HANDLE_NAME'];

				if (count($result) > 0){
					// ログインログ入力
					$resInsertLog = $this->_model->InsertLog($result[0]['M92_USER_CD'],$db);
					// ログイン情報更新
					$resLoginDate = $this->_model->loginDate($result[0]['M92_USER_CD'],$db);
					// コミット
					$this->_model->commitTransaction($db);

					// OK返却データ作成
					$resResult = array('count' => 1,'data' => $result);
				} else {
					// NG返却データ作成
					$resResult = array('count' => 0,'data' => array());
				}
				// コネクションクローズ
				$db->closeConnection();
				// 返却処理
				$this->_api_data = $resResult;
				$this->display();
			} catch (Exception $e) {
				// エラー発生時
				// ロールバック
				$this->_model->rollbackTransaction($db);
				// コネクションクローズ
				$db->closeConnection();
				// NG返却データ作成
				$resResult = array('count' => 0,'data' => array());
				// 返却処理
				$this->_api_data = $resResult;
				$this->display();
			}
		}
		else
		{
			//PC処理(使ってないですけど念のために...)
			Apm_Util::redirect($this->_loginurl, $this->_params);
		}
	}

	/**
	 * マイページ画面の共通パラメータ設定
	 *
	 */
	private function setCommonParams()
	{

		//=====タイトル=====
		$this->setTitle('賃貸情報アパマンショップ［マイページ｜ログイン］');

		//=====ヘッダタイトル=====
		$this->setHeaderTitle('賃貸住宅・賃貸マンション・賃貸アパートの検索ならアパマンショップ。全国の賃貸住宅、賃貸不動産情報が満載です。');

		$this->setContentsTitle('ログイン', '');
        $this->addMetaJs('/app/js/jquery.validation.js');
        $this->addMetaCss('/css/inquiry/hp/form.css');
		$this->_breadcrumb->reset();
        $this->_breadcrumb->add(Apm_Config_Search::BREADCRUMB_TOP, $this->_baseurl);
        $this->_breadcrumb->add('ログイン', $this->_sslurl . 'mypage/login');
        $this->setBreadCrumb($this->_breadcrumb->generateBreadcrumb());
	}

}
?>
